package com.chenyun.message.sms.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 响应体
 * @author: Lonni
 * @date: 2022/7/29 0029 16:49
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class SmsResponseDTO<T> {
    private Boolean success;
    private String msg;
    private T data;


    /**
     * 发送短信接受类
     */
    @Data
    @Builder
    public static class  SmsSendRsp{
        private String requestId;
        private String code;
        private String message;
        private String bizId;
    }

    /**
     * 添加模版响应类
     */
    @Data
    @Builder
    public static class  SmsAddTemplateRsp{
        private String requestId;
        private String code;
        private String message;
        private String templateCode;
    }

    /**
     * 模版状态
     */
    @Data
    @Builder
    public static class  SmsTemplateStatusRsp{
        private String requestId;
        private String code;
        private String message;
        private String templateCode;
        /**
         * 状态 模板审核状态。取值：
         * 0：审核中。
         * 1：审核通过。
         * 2：审核失败，请在返回参数Reason中查看审核失败原因。
         * 10：取消审核。
         */
        private Integer templateStatus;
        /**
         * 审核备注。
         * 如果审核状态为审核通过或审核中，参数Reason显示为“无审批备注”。
         * 如果审核状态为审核未通过，参数Reason显示审核的具体原因。
         * 非验证码类型短信，请选择短信通知类型为推广短信。
         */
        private String reason;
    }

}
